System and method of precision remote ptz control of ip cameras

ABSTRACT

Systems and methods of precision remote PTZ control of IP cameras are provided. Some methods include capturing a plurality of images, each image in the plurality of images corresponding to an angle into which a video surveillance device can be positioned, receiving user input indicating a desired position of the video surveillance device, displaying one of the plurality of images, the one of the plurality of images corresponding to the desired position of the video surveillance device, receiving user input confirming the one of the plurality of images, and transmitting instructions to the video surveillance device, the instructions containing coordinate information corresponding to the one of the plurality of images.

FIELD

The present invention relates generally to the PTZ control of IP cameras. More particularly, the present invention relates to a system and method of precision remote PTZ control of IP cameras.

BACKGROUND

It is known in the art that there is an operation delay in the remote PTZ (pan, tilt, zoom) control of IP (Internet protocol) cameras. Indeed, the latency of the PTZ control of an IP camera is a key parameter of a system that incorporates IP cameras with PTZ control.

In many commercial scenarios, operation of the PTZ control of an IP camera is in a local network. Accordingly, the latency and operation delay can be somewhat controlled. However, even in these scenarios, the latency and operation delay is longer than analog PTZ control.

When operation of the PTZ control of an IP camera is via the Internet, the complicated network environment causes the latency and operation delay to be longer than in a local network. Indeed, as mobile applications and 3G and 4G networks become more popular and user traffic increases accordingly, the latency and operation delay of the PTZ control of IP cameras via the Internet is becoming longer and more unpredictable.

Two systems and methods for remote PTZ control of IP cameras are known in the art. First, PTZ can be controlled via a user interface that includes directional arrows, such as buttons with arrows in different directions. Second, PTZ can be controlled via a user interface that includes slide bars that can be moved in different directions. However, the user may need to perform several operations and provide more than one input to move the PTZ of the IP camera to a desired position.

Furthermore, both known systems and methods have delays from when the user provides input to when the IP camera moves in accordance with the user's input to when the user receives video confirmation that the IP camera moved in accordance with his input, which may assist the user in determining his next input. Indeed, during this latent period, the user may be uncertain as to whether his input was successfully received and executed. Accordingly, the user may provide additional PTZ control input during the latent period, which may cause unexpected and/or undesired movement of the IP camera.

Preset positions of the PTZ of an IP camera have been used to overcome the operation delays and latent periods described above. For example, the user can provide input to move the IP camera to one of a plurality of preset positions. However, the use of preset positions is often undesirable because the user is limited in the positions to which he can move the IP camera.

In view of the above, there is a continuing, ongoing need for improved systems and methods of remote PTZ control of IP cameras.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1A is a flow diagram of a method in accordance with disclosed embodiments;

FIG. 1B is a continuation of the flow diagram shown in FIG. 1A; and

FIG. 2 is a block diagram of a system in accordance with disclosed embodiments.

DETAILED DESCRIPTION

While this invention is susceptible of an embodiment in many different forms, there are shown in the drawings and will be described herein in detail specific embodiments thereof with the understanding that the present disclosure is to be considered as an exemplification of the principles of the invention. It is not intended to limit the invention to the specific illustrated embodiments.

Embodiments disclosed herein include systems and methods of precision remote PTZ control of IP cameras. For example, a user can locally control the PTZ of a remote IP camera before control instructions are transmitted to the IP camera.

In some embodiments, systems and methods disclosed herein can provide the user with a prompt to provide input. The user can provide input that indicates a desired position of a remote IP camera and can also confirm the desired position of the remote IP camera. Then, systems and methods disclosed herein can transmit PTZ position parameters to the remote IP camera, and the IP camera can pan, tilt, and zoom in accordance with the received PTZ position parameters. Accordingly, the IP camera can perform a single operation to move to the desired position, and the user need not wait for feedback from the IP camera to determine a next action for controlling the camera.

When an IP camera with PTZ control is installed in and connected to a network, systems and methods disclosed herein can execute a software program to obtain images captured by the camera when the camera is in a plurality of different PTZ positions. For example, an image can be captured at each angle the camera can reach and corresponding coordinates of the camera and/or capture image at each angle can be determined. Then, systems and methods disclosed herein can synthesize the captured images into one image according to coordinates.

When a user connects to the network and/or to the IP camera on the network, via, for example, a local computer or the like, the previously obtained image information can be transmitted to the user. During operation, video data streams captured by the IP camera can be transmitted to the user for viewing and, when the user provides input to start PTZ control of the IP camera, systems and methods disclosed herein can change from displaying video data streams captured by the IP camera to displaying the previously captured image corresponding to the current coordinates of the camera.

The user can provide input to indicate a desired position of the IP camera. Based on the user input, systems and methods disclosed herein can determine coordinates for the camera that correspond to the desired position and then display the previously captured image that corresponds to the desired coordinates. Accordingly, the user can view the image and confirm the image and/or view that will be achieved by the operation caused by the user input before the operation is executed.

After the user provides input confirming the desired position, coordinates, image, and/or view, systems and methods disclosed herein can send instructions to the IP camera with PTZ coordinate information corresponding to the desired position, and the PTZ of the camera can move accordingly. Then, systems and methods disclosed herein can switch back to displaying video data streams captured by the IP camera.

FIGS. 1A and 1B are flow diagrams of a method 100 in accordance with disclosed embodiments. As seen, an IP camera with PTZ control can be installed in and connected to a network as in 105. Then, the IP camera can capture images at each angle the camera can reach as in 110, coordinates corresponding to each image captured as in 110 can be determined as in 115, and, as in 120, the images captured as in 110 can be synthesized into one image according to the coordinates determined as in 115.

When the method 100 determines that a user has connected to the IP camera via the network as in 125, the image information captured as in 110, 115, and/or 120 can be transmitted to the user as in 130. Then, video data streams captured by the IP camera can be transmitted and displayed to the user as in 135. When the method 100 determines that user input has been received to start PTZ control of the IP camera as in 140, the image information captured as in 110, 115, and 120 that corresponds to the current coordinates of the IP camera can be displayed to the user as in 145, for example, in lieu of the previously displayed video data stream.

The user can provide input to indicate a desired position of the IP camera as in 150, coordinates corresponding to the desired position can be determined as in 155, and the image information captured as in 110, 115, and/120 that corresponds to the coordinates determined as in 155 can be displayed as in 160. When, as in 165, the method 100 determines that the user has confirmed the image information displayed as in 160, instructions containing coordinate information corresponding to the image information displayed as in 160 can be transmitted to the IP camera as in 170, and the IP camera can move in accordance with the received instructions as in 175. Finally, video data streams captured by the IP camera can be displayed to the user once again as in 135.

FIG. 2 is a block diagram of a system 200 in accordance with disclosed embodiments. As seen in FIG. 2, the system 200 can include a system 210 local to a user that is connected, via a network 220, for example, the Internet, to an IP camera 230 in a remote monitoring region R.

In some embodiments, the system 210 can include a user's workstation, laptop, desktop, personal digital assistant, smart phone, or other computing device as would be known and desired by those of skill in the art. The system 210 can include a user interface 210, a memory device 218, control circuitry 214, one or more programmable processors 215, and executable control software 216 as would be understood by those of ordinary skill in the art. The executable control software 216 can be stored on a transitory or non-transitory local computer readable medium, including, but not limited to, local computer memory, RAM, optical storage media, magnetic storage media, flash memory, and the like. In some embodiments, the control circuitry 214, the programmable processors 215, and/or the control software 216 can execute and control some or all of the methods described above.

As seen in FIG. 2, the IP camera can also include a memory device 236, control circuitry 232, one or more programmable processors 233, and executable control software 234 as would be understood by those of ordinary skill in the art. The executable control software 234 can be stored on a transitory or non-transitory local computer readable medium, including, but not limited to, local computer memory, RAM, optical storage media, magnetic storage media, flash memory, and the like. In some embodiments, the control circuitry 232, the programmable processors 233, and/or the control software 234 can execute and control some or all of the methods described above.

Although a few embodiments have been described in detail above, other modifications are possible. For example, the logic flows described above do not require the particular order described, or sequential order, to achieve desirable results. Other steps may be provided, or steps may be eliminated, from the described flows, and other components may be added to, or removed from, the described systems. Other embodiments may be within the scope of the invention.

From the foregoing, it will be observed that numerous variations and modifications may be effected without departing from the spirit and scope of the invention. It is to be understood that no limitation with respect to the specific system or method described herein is intended or should be inferred. It is, of course, intended to cover all such modifications as fall within the sprit and scope of the invention. 

What is claimed is:
 1. A method comprising: capturing a plurality of images, each image in the plurality of images corresponding to an angle into which a video surveillance device can be positioned; receiving user input indicating a desired position of the video surveillance device; displaying one of the plurality of images, the one of the plurality of images corresponding to the desired position of the video surveillance device; receiving user input confirming the one of the plurality of images; and transmitting instructions to the video surveillance device, the instructions containing coordinate information corresponding to the one of the plurality of images.
 2. The method of claim 1 wherein capturing the plurality of images occurs upon installation of the video surveillance device on a network.
 3. The method of claim 1 wherein the video surveillance device includes an IP camera.
 4. The method of claim 1 wherein capturing the plurality of images includes determining coordinates corresponding to each image in the plurality of images.
 5. The method of claim 4 wherein capturing the plurality of images includes synthesizing the images in the plurality of images into a single image according to the determined coordinates.
 6. The method of claim 1 further comprising displaying video data streams captured by the video surveillance device until user input is received to start PTZ control of the video surveillance device.
 7. The method of claim 6 further comprising, upon receiving user input to start the PTZ control of the video surveillance device, displaying a second of the plurality of images, the second of the plurality of images corresponding to a current position of the video surveillance device.
 8. The method of claim 1 further comprising determining coordinates corresponding to the desired position of the video surveillance device.
 9. The method of claim 8 wherein displaying the one of the plurality of images includes displaying the one of the plurality of images corresponding to the determined coordinates.
 10. The method of claim 1 wherein the coordinate information includes PTZ position parameters for the video surveillance device.
 11. A system comprising: a user interface; and a programmable processor and executable control software stored on a non-transitory computer readable medium for: capturing a plurality of images, each image in the plurality of images corresponding to an angle into which a video surveillance device can be positioned; receiving, via the user interface, user input indicating a desired position of the video surveillance device; displaying, on the user interface, one of the plurality of images, the one of the plurality of images corresponding to the desired position of the video surveillance device; receiving, via the user interface, user input confirming the one of the plurality of images; and transmitting instructions to the video surveillance device, the instructions containing coordinate information corresponding to the one of the plurality of images.
 12. The system of claim 11 wherein the programmable processor and the executable control software capture the plurality of images upon installation of the video surveillance device on a network.
 13. The system of claim 11 wherein the video surveillance device includes an IP camera.
 14. The system of claim 11 wherein the programmable processor and the executable control software capturing the plurality of images includes the programmable processor and the executable control software determining coordinates corresponding to each image in the plurality of images.
 15. The system of claim 14 wherein the programmable processor and the executable control software capturing the plurality of images includes the programmable processor and the executable control software synthesizing the images in the plurality of images into a single image according to the determined coordinates.
 16. The system of claim 11 further comprising the programmable processor and the executable control software displaying, on the user interface, video data streams captured by the video surveillance device until user input is received, via the user interface, to start PTZ control of the video surveillance device.
 17. The system of claim 16 further comprising, upon receiving user input, via the user interface, to start the PTZ control of the video surveillance device, the programmable processor and the executable control software displaying, on the user interface, a second of the plurality of images, the second of the plurality of images corresponding to a current position of the video surveillance device.
 18. The system of claim 11 further comprising the programmable processor and the executable control software determining coordinates corresponding to the desired position of the video surveillance device
 19. The system of claim 18 wherein the programmable processor and the executable control software displaying, on the user interface, the one of the plurality of images includes the programmable processor and the executable control software displaying, on the user interface, the one of the plurality of images corresponding to the determined coordinates.
 20. The system of claim 11 wherein the coordinate information includes PTZ position parameters for the video surveillance device. 